#pragma once
#include <QLabel>
class QPaintEngine;
class QScreenMonitorWidget;
class QScreenLabel : public QLabel
{
	Q_OBJECT

public:
	QScreenLabel(QWidget* parent);
	~QScreenLabel();
	void SetQScreenMonitorWidget(QScreenMonitorWidget* qMonitorWidget);
	QPaintEngine* paintEngine() const;
private:
	QScreenMonitorWidget* m_qMonitorWidget;
protected:
	void SendCommand();
	// Event handlers
	void paintEvent(QPaintEvent* event);
	virtual void mousePressEvent(QMouseEvent* event);
	virtual void mouseReleaseEvent(QMouseEvent* event);
	virtual void mouseMoveEvent(QMouseEvent* event);
	virtual void mouseDoubleClickEvent(QMouseEvent* event);
	virtual void keyPressEvent(QKeyEvent* event);
	virtual void keyReleaseEvent(QKeyEvent* event);
	virtual void wheelEvent(QWheelEvent* event);
};